iT邦幫忙

2021 iThome 鐵人賽

DAY 12
1

其實到目前為止,
我們所做的動作都差不多,
只是差在邏輯上的判斷而已,
相信大家已經覺得有點拖屏了,
今天就是這個題目的最後一天了,
我們接下來一口氣加入四組資料

public function input_number()
{
    return [
        ['4', '閏年'],
        ['2020', '閏年'],
        ['1900', '平年'],
        ['2100', '平年'],
        ['2000', '閏年'],
        ['1600', '閏年'],
        ['2021', '平年'],
        ['2023', '平年'],
    ];
}

那我們預期400的倍數應該會誤判,
然後無法被4整除的部分可以判斷出來,
所以應該會有兩組是錯誤的,
我們現在執行看看
php vendor/phpunit/phpunit/phpunit tests/Feature/MyFirstUnitTest.php
https://ithelp.ithome.com.tw/upload/images/20210913/20105694eNeEUZdiUn.png

果然跟我們預期的一樣,
所以現在要來修改web.php了

Route::get('/getLeapYear/{id}', function($id) {
    if($id % 400 == 0)
        return "閏年";
    if($id % 100 == 0)
        return "平年";
    if($id % 4 == 0)
        return "閏年";
    return "平年";
});

改完之後我們再來執行看看,
是不是成功了
php vendor/phpunit/phpunit/phpunit tests/Feature/MyFirstUnitTest.php
https://ithelp.ithome.com.tw/upload/images/20210913/20105694ygjGZjBzaJ.png

果然是如我們所預料的,
全部的條件都通過了,
當然為了確保資料的正確性,
我們可以用更多的數據下去測試,
不過這部分我們就不再多贅述了。

接下來我們又遇到了一個問題,
正常來說我們並不會將計算的方法直接寫在web.php當中,
而且這也不符合MVC的特性,
所以我們明天開始就要來改寫這個部分。


上一篇
[Day 11] 簡單的單元測試實作(五)
下一篇
[Day 13] 簡單的單元測試實作(七)-建立共用的函式
系列文
當拉拉肉遇到單元測試,是否能夠擦出命運的火花?31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言